package modelo;

import java.util.ArrayList;
import java.util.List;

public class OrdenCompra {
	private int numero;
	private Proveedor proveedor;
	private List<ItemOC> itemsOC;
	
	private static int proximo;
	
	public OrdenCompra(Proveedor proveedor){
		this.proveedor = proveedor;
		this.numero = getProximo();
		this.itemsOC = new ArrayList<ItemOC>();
	}
	
	/**
	 * Una orden de compra tiene un unico proveedor, no se pueden agregar materiales
	 * que no sean provistos por el proveedor al cual va dirigida la OC. 
	 */ 
	public void agregarItem(Material material, int cantidad){
		if (proveedor.equalsProveedor(material.getProveedor())) {
			this.itemsOC.add(new ItemOC(material, cantidad));
		} else {
			System.out.println("Error!!! El material agregado no es provisto por "+proveedor);
		}
		
	}

	public static int getProximo(){
		return proximo++;
	}
	
	public int getNumero() {
		return numero;
	}

	public Proveedor getProveedor() {
		return proveedor;
	}

	public List<ItemOC> getItemsOC() {
		return itemsOC;
	}

}
